The present invention relates to a noise canceling method and an apparatus for the same and, more particularly, to a noise canceling method for canceling, by use of an adaptive filter, a background noise signal introduced into a speech signal input via a microphone, a handset or the like, and an apparatus for the same.
A background noise signal introduced into a speech signal input via, e g., a microphone or a handset is a critical problem when it comes to a narrow band speech coder, speech recognition device and so forth which compress information to a high degree. Noise cancelers for canceling such acoustically superposed noise components include a biinput noise canceler using an adaptive filter and taught in B. Widrow et al. "Adaptive Noise Cancelling: Principles and Applications", PROCEEDINGS OF IEEE, VOL. 63, NO. 12, DECEMBER 1975, pp. 1692-1716 (Document 1 hereinafter).
The noise canceler taught in Document 1 includes an adaptive filter for approximating the impulse response of a noise path along which a noise signal input to a reference input terminal to propagate toward a speech input terminal. The noise canceler generates a pseudo noise signal corresponding to a noise signal component introduced into the speech input terminal and subtracts the pseudo noise signal from a received signal input to the speech input terminal (combination of a speech signal and a noise signal), thereby suppressing the noise signal.
The filter coefficient of the above adaptive filter is corrected by determining a correlation between an error signal produced by subtracting the estimated noise signal from the main signal and a reference signal derived from the reference signal microphone. Typical of an algorithm for such coefficient correction, i.e., a convergence algorithm is "LMS algorithm" describe in Document 1 or "LIM (Learning Identification Method) algorithm" described in IEEE TRANSACTIONS ON AUTOMATIC CONTROL, VOL. 12, NO. 3, 1967, pp. 282-287 (Document 2 hereinafter).
A conventional noise cancellation principle will be described with reference to FIG. 5. As shown, a speech uttered by a talker is acoustoelectrically transformed to a speech signal by, e.g., a microphone located in the vicinity of the talker's mouth. The speech signal, containing a background noise signal, is applied to a speech input terminal 1. A signal output from a microphone remote from the talker by acoustoelectrical transduction substantially corresponds to the background noise signal input to the speech input terminal 1 and is applied to a reference signal input terminal 2.
The combined speech signal and background noise signal applied to the speech input terminal 1 (referred to as a received signal hereinafter) is fed to a delay circuit 3. The delay circuit 3 delays the received signal by a period of time of .DELTA.dt1 and delivers the delayed received signal to a subtracter 5. The subtracter 5 is used to satisfy the law of cause and effect. The delay .DELTA.t1 is usually selected to be about one half of the number of taps of an adaptive filter 4.
On the other hand, the noise signal input to the reference input terminal 2 is fed to the adaptive filter 4 as a reference noise signal. The adaptive filter 4 filters the noise signal to thereby output a pseudo noise signal. The pseudo noise signal is fed to the subtracter 5. The subtracter 5 subtracts the pseudo noise signal from the delayed received signal output from the delay circuit 3, thereby cancelling the background noise signal component of the received signal. The received signal free from the background noise signal component is fed out as an error signal.
The adaptive filter 4 sequentially updates its filter coefficient on the basis of the reference noise signal input via the reference input terminal 2, the error signal fed from the subtracter 5, and a step size .alpha. selected for coefficient updating beforehand. To update the filter coefficient, use may be made of an "LMS (Least Minimum Square) algorithm" taught in Document 1 or the "LIM" taught in Document 2.
Assume that the received signal input via the speech input terminal 1 contains a speech signal component s(k) (k being an index representative of time) and a noise signal component n(k) to be canceled. Also, assume that the delay .DELTA.t1 assigned to the delay circuit 3 is zero for the simplicity of description. Then, a received signal y(k) input to the subtracter 5 via the speech input terminal 1 is expressed as: EQU y(k)=s(k)+n(k) Eq. (1)
The adaptive filter 4, receiving a reference noise signal x(k) via the reference input terminal 2, so operates as to output a pseudo noise signal r(k) corresponding to the noise signal component n(k) included in the above Eq. (1). The subtracter 5 subtracts the pseudo noise signal r(k) from the received signal y(k) to thereby output an error signal e(k). Let additional noise components not to be canceled be neglected because they are far smaller than the speech signal component s(k). Then, the error signal e(k) may be expressed as: EQU e(k)=s(k)+n(k)-r(k) Eq. (2)
How the filter coefficient is updated will be described hereinafter, assuming the LMS algorithm described in Document 1. Let the j-th coefficient of the adaptive filter 4 at a time k be wj(k). Then, the pseudo noise signal r(k) output from the filter 4 is produced by: ##EQU1##
where N denotes the number of steps of the filter 4.
By applying the pseudo noise signal r(k) given by the Eq. (3) to the Eq. (2), there can be produced the error signal e(k). With the error signal e(k), it is possible to determine a coefficient wj(k+1) at a time (k+1): EQU wj(k+1)=wj(k)+.alpha..multidot.e(k).multidot.x(k-j) Eq. (4)
where .alpha. is a constant referred to as a step size and used as a parameter for determining the converging time of the coefficient and the residual error after convergence.
As for the LIM scheme taught in Document 2, the filter coefficient is updated by use of the following equation: ##EQU2##
where .mu. denotes the step size relating to the LIM scheme. Specifically, in the LIM scheme, the step size is inversely proportional to the mean power of the reference noise signal x(k) input to the adaptive filter so as to implement more stable convergence than the LMS algorithm.
A greater step size .alpha. in the LMS algorithm or a greater step size .mu. in the LIM scheme promotes rapid convergence because the coefficient is corrected by a greater amount. However, when any component obstructing the updating of the coefficient is present, the greater amount of updating is noticeably influenced by such a component and increases the residual error. Conversely, a smaller step size reduces the influence of the above obstructing component and therefore the residual error although it increases the converging time. It follows that a trade-off exists between the "converging time" and the "residual error" in the setting of the step size.
Now, the object of the adaptive filter 4 for noise cancellation is to generate the pseudo signal component r(k) of the noise signal portion n(k). Therefore, to produce an error signal for updating the filter coefficient, a difference between n(k) and r(k), i.e., a residual error (n(k)-r(k)) is essential. However, the error signal e(k) contains the speech signal component -s(k), as the Eq. (2) indicates. The speech signal component s(K) turns out an interference signal component noticeably affecting the operation for updating the adaptive filter 4.
To reduce the influence of the speech signal component s(k) which is an interference signal for the adaptive filter 4, the step size for updating the coefficient of the filter 4 may be reduced. This, however, would slow down the convergence of the filter 4.
Japanese Patent Laid-Open Publication No. 7-202765 (Document 3 hereinafter) discloses a convergence algorithm for an adaptive filter applicable to an echo canceler and giving considering to the influence of the above interference signal. This convergence algorithm is such that the step size of an adaptive filter is controlled on the basis of an estimated interference signal level so as to obviate the influence of the interference signal. A system identification system described in Document 3 and using an adaptive filter determines a section where the pseudo generated signal output from the adaptive filter 4 is small, and estimates an interference signal level in such a section.
The pseudo generated signal mentioned above corresponds to the pseudo noise signal r(k) particular to a noise canceler or corresponds to a pseudo echo signal particular to an echo canceler. Assume that the adaptive filter is converged, and that the pseudo noise signal r(k) output from the filter is zero or negligibly small, compared to s(k), in a given section. Then, because the noise signal n(k) to be estimated by the adaptive filter is also zero, the Eq. (2) is rewritten as:
e(k).apprxeq.s(k) Eq. (6)
That is, the interference signal component s(k) is produced as an error signal e(k). It follows that if a section where the above assumption is satisfied can be identified, it is possible to estimate the level of the interference signal s(k). When the interference signal level is high, a decrease in the residual error ascribable to the interference signal can be obviated if the step size is relatively reduced.
To estimate the level of the interference signal s(k) by applying the system of Document 3 to a noise canceler, it is necessary that a section where the pseudo noise signal r(k) output from the adaptive filter be zero (or small), i.e., where the noise signal n(k) itself is zero (or small) be present. As for an echo canceler, because the adaptive filter estimates an echo signal, i.e., a speech, a soundless section naturally exits and allows an interference signal to be stably estimated. However, as for a noise canceler, the adaptive filter estimates a noise signal to be canceled, so that a soundless section does not always exist. This is true with, e.g., noise ascribable to an air conditioner or a vehicle engine. In this condition, the adaptive filter cannot estimate the level of the interference signal.